/* ************************************************************************** */
/*                                                                            */
/*                                                        :::      ::::::::   */
/*   list_find.h                                        :+:      :+:    :+:   */
/*                                                    +:+ +:+         +:+     */
/*   By: Jiang <767280080@qq.com>                   +#+  +:+       +#+        */
/*                                                +#+#+#+#+#+   +#+           */
/*   Created: 2024/04/23 11:10:31 by Jiang             #+#    #+#             */
/*   Updated: 2024/04/23 11:10:31 by Jiang            ###   ########.fr       */
/*                                                                            */
/* ************************************************************************** */

#ifndef __list_find__
#define __list_find__

template <typename T>
ListNodePosi<T> List<T>::find(const T &e, Rank n, ListNodePosi<T> p) const {
  while (n-- > 0)
    if (e == (p = p->prev)->data)
      return p;
  return nullptr;
}

#endif // !__list_find__
